package com.winsdom.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.web.multipart.MultipartFile;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(description = "退款记录DTO")
public class RefundOrderDTO {

    @ApiModelProperty(value = "退款类型", required = true)
    @NotBlank(message = "退款类型不为空")
    private String refundType = "误打款";

    @ApiModelProperty(value = "关联的收款记录id",required = true)
    @NotNull(message = "关联收款记录id不为空")
    private Long orderId;

    @ApiModelProperty(value = "退款金额",required = true)
    @Min(value = 0,message = "退款金额不为负")
    @NotNull(message = "退款金额不为空")
    private BigDecimal refundAmount;

    @ApiModelProperty(value = "退款银行",required = true)
    @NotBlank(message = "退款银行不为空")
    private String bankName;

    @ApiModelProperty(value = "开户银行",required = true)
    @NotBlank(message = "开户银行不为空")
    private String accountBank;

    @ApiModelProperty(value = "退款账号",required = true)
    @NotBlank(message = "退款账号不为空")
    private String accountNo;

    @ApiModelProperty(value = "退款账户名",required = true)
    @NotBlank(message = "退款账户名不为空")
    private String accountName;

    @ApiModelProperty(value = "退款原因",required = true)
    @NotBlank(message = "退款原因不为空")
    private String refundReason;

    @ApiModelProperty(value = "授权图片")
    private String authImages;

}
